package com.ruoyi.service;

import java.util.List;
import com.ruoyi.domain.MatePurRequisition;

/**
 * 用料采购申请Service接口
 * 
 * @author ruoyi
 * @date 2020-07-06
 */
public interface IMatePurRequisitionService 
{
    /**
     * 查询用料采购申请
     * 
     * @param id 用料采购申请ID
     * @return 用料采购申请
     */
    public MatePurRequisition selectMatePurRequisitionById(Long id);

    /**
     * 查询用料采购申请列表
     * 
     * @param matePurRequisition 用料采购申请
     * @return 用料采购申请集合
     */
    public List<MatePurRequisition> selectMatePurRequisitionList(MatePurRequisition matePurRequisition);

    /**
     * 新增用料采购申请
     * 
     * @param matePurRequisition 用料采购申请
     * @return 结果
     */
    public int insertMatePurRequisition(MatePurRequisition matePurRequisition);

    /**
     * 修改用料采购申请
     * 
     * @param matePurRequisition 用料采购申请
     * @return 结果
     */
    public int updateMatePurRequisition(MatePurRequisition matePurRequisition);

    /**
     * 批量删除用料采购申请
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteMatePurRequisitionByIds(String ids);

    /**
     * 删除用料采购申请信息
     * 
     * @param id 用料采购申请ID
     * @return 结果
     */
    public int deleteMatePurRequisitionById(Long id);

    /**
     * 根据总项目查询对应的用料采购申请
     */
    List<MatePurRequisition> selectMatePurRequisitionLists(Long sid);

    /**
     * 提交【审批】信息
     *
     * @param id 【审批】ID
     * @return 结果
     */
    public int submitExaStatus(Long id);

    /**
     * 撤销【审批】信息
     *
     * @param id 【审批】ID
     * @return 结果
     */
    public int revoExaStatus(Long id);

    /**
     * 通过申请【审批】信息
     *
     * @param id 【审批】ID
     * @return 结果
     */
    public int conExaStatus(Long id);

    /**
     * 驳回申请【审批】信息
     *
     * @param id 【审批】ID
     * @return 结果
     */
    public int editExaStatus(Long id);

    /**
     * 通过通过id去查询是审批通过了什么材料,返回一个对象,对象里包含查询到的所有数据
     */
    MatePurRequisition  ExaId(Long id);

}
